<!DOCTYPE html>
<html class="client-nojs vector-feature-night-mode-disabled vector-feature-language-in-header-enabled vector-feature-language-in-main-page-header-disabled vector-feature-page-tools-pinned-disabled vector-feature-toc-pinned-clientpref-1 vector-feature-main-menu-pinned-disabled vector-feature-limited-width-clientpref-1 vector-feature-limited-width-content-enabled vector-feature-custom-font-size-clientpref-1 vector-feature-appearance-pinned-clientpref-1 vector-sticky-header-enabled" lang="en" dir="ltr"><head>
<meta charset="UTF-8">
<title>Patch (computing)</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="canonical" href="https://en.wikipedia.org/wiki/Patch_(computing)"> <link href="./mw/ext.cite.styles.css" rel="stylesheet" type="text/css">
<link href="./mw/skins.vector.icons.css" rel="stylesheet" type="text/css">
<link href="./mw/skins.vector.search.codex.styles.css" rel="stylesheet" type="text/css">
<link href="./mw/skins.vector.styles.css" rel="stylesheet" type="text/css">
<link href="./mw/user.styles.css" rel="stylesheet" type="text/css">
<meta name="ResourceLoaderDynamicStyles" content="">
<link rel="stylesheet" type="text/css" href="./mw/site.styles.css">
<link rel="stylesheet" type="text/css" href="./mw/noscript.css">
<link rel="stylesheet" type="text/css" href="./footer.css">
<link rel="stylesheet" type="text/css" href="./vector-2022.css">
</head>
<body class="skin--responsive skin-vector skin-vector-search-vue mediawiki ltr sitedir-ltr mw-hide-empty-elt ns-0 ns-subject page-Patch_computing rootpage-Patch_computing skin-vector-2022 action-view">
<div class="mw-page-container">
<div class="mw-page-container-inner">
<div class="mw-content-container">
<main id="content" class="mw-body">
<header class="mw-body-header vector-page-titlebar">
<h1 id="firstHeading" class="firstHeading mw-first-heading">
<span id="openzim-page-title" class="mw-page-title-main"><span class="mw-page-title-main">Patch (computing)</span></span>
</h1>
</header>
<a id="top"></a>
<div id="bodyContent" class="vector-body ve-init-mw-desktopArticleTarget-targetContainer" aria-labelledby="firstHeading" data-mw-ve-target-container="">
<div id="mw-content-text" class="mw-body-content mw-content-ltr" lang="en" dir="ltr"><div class="mw-content-ltr mw-parser-output" lang="en" dir="ltr">
<style data-mw-deduplicate="TemplateStyles:r1236090951">
/* start https://en.wikipedia.org/ */
.mw-parser-output .hatnote{font-style:italic}.mw-parser-output div.hatnote{padding-left:1.6em;margin-bottom:0.5em}.mw-parser-output .hatnote i{font-style:normal}.mw-parser-output .hatnote+link+.hatnote{margin-top:-0.5em}@media print{body.ns-0 .mw-parser-output .hatnote{display:none!important}}
/* end https://en.wikipedia.org/ */
</style><div role="note" class="hatnote navigation-not-searchable">This article is about modifying software based on a file that encodes the changes. For other software updates called patch or patching, see <a href="Software_update" title="Software update">Software update</a>.</div>
<div role="note" class="hatnote navigation-not-searchable">For other uses of "Patch", see <a href="Patch_(disambiguation)" class="mw-redirect mw-disambig" title="Patch (disambiguation)">Patch (disambiguation)</a>.</div>
<style data-mw-deduplicate="TemplateStyles:r1305433154">
/* start https://en.wikipedia.org/ */
.mw-parser-output .ambox{border:1px solid #a2a9b1;border-left:10px solid #36c;background-color:#fbfbfb;box-sizing:border-box}.mw-parser-output .ambox+link+.ambox,.mw-parser-output .ambox+link+style+.ambox,.mw-parser-output .ambox+link+link+.ambox,.mw-parser-output .ambox+.mw-empty-elt+link+.ambox,.mw-parser-output .ambox+.mw-empty-elt+link+style+.ambox,.mw-parser-output .ambox+.mw-empty-elt+link+link+.ambox{margin-top:-1px}html body.mediawiki .mw-parser-output .ambox.mbox-small-left{margin:4px 1em 4px 0;overflow:hidden;width:238px;border-collapse:collapse;font-size:88%;line-height:1.25em}.mw-parser-output .ambox-speedy{border-left:10px solid #b32424;background-color:#fee7e6}.mw-parser-output .ambox-delete{border-left:10px solid #b32424}.mw-parser-output .ambox-content{border-left:10px solid #f28500}.mw-parser-output .ambox-style{border-left:10px solid #fc3}.mw-parser-output .ambox-move{border-left:10px solid #9932cc}.mw-parser-output .ambox-protection{border-left:10px solid #a2a9b1}.mw-parser-output .ambox .mbox-text{border:none;padding:0.25em 0.5em;width:100%}.mw-parser-output .ambox .mbox-image{border:none;padding:2px 0 2px 0.5em;text-align:center}.mw-parser-output .ambox .mbox-imageright{border:none;padding:2px 0.5em 2px 0;text-align:center}.mw-parser-output .ambox .mbox-empty-cell{border:none;padding:0;width:1px}.mw-parser-output .ambox .mbox-image-div{width:52px}@media(min-width:720px){.mw-parser-output .ambox{margin:0 10%}}@media print{body.ns-0 .mw-parser-output .ambox{display:none!important}}
/* end https://en.wikipedia.org/ */
</style>
<p>A <b>patch</b> is <a href="Data" title="Data">data</a> for modifying an existing <a href="System_resource" title="System resource">software resource</a> such as a <a href="Computer_program" title="Computer program">program</a> or a <a href="Computer_file" title="Computer file">file</a>, often to fix <a href="Software_bug" title="Software bug">bugs</a> and <a href="Security_vulnerability" class="mw-redirect" title="Security vulnerability">security vulnerabilities</a>.<sup id="cite_ref-news.com_1-0" class="reference"><a href="#cite_note-news.com-1"><span class="cite-bracket">[</span>1<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-2" class="reference"><a href="#cite_note-2"><span class="cite-bracket">[</span>2<span class="cite-bracket">]</span></a></sup> Patch is also the process of applying the data to the existing resource. Patching a system involves applying a patch. A patch may be created to improve functionality, <a href="Usability" title="Usability">usability</a>, or <a href="Computer_performance" title="Computer performance">performance</a>. A patch may be created manually, but commonly it is created via a tool that compares two versions of the resource and generates data that can be used to transform one to the other.
</p><p>Typically, a patch needs to be applied to the specific version of the resource it is intended to modify, although there are exceptions. Some patching tools can detect the version of the existing resource and apply the appropriate patch, even if it supports multiple versions. As more patches are released, their cumulative size can grow significantly, sometimes exceeding the size of the resource itself. To manage this, the number of supported versions may be limited, or a complete copy of the resource might be provided instead.
</p><p>Patching allows for modifying a <a href="Machine_language" class="mw-redirect" title="Machine language">binary</a> <a href="Executable" title="Executable">executable</a>. Although this can be technically challenging (requires a thorough understanding of the workings of the executable), it may be feasible when the <a href="Source_code" title="Source code">source code</a> is unavailable to <a href="Software_build" title="Software build">build</a> a full executable, and it allows for a smaller distribution which can be more economical than distributing full files.
</p><p>Although often intended to fix problems, a patch can introduce <a href="Software_regression" title="Software regression">new problems</a>. In some cases, an update intentionally disables functionality, for instance, by removing aspects for which the consumer is no longer licensed. <a href="Patch_management" title="Patch management">Patch management</a> is a part of <a href="Application_lifecycle_management" title="Application lifecycle management">lifecycle management</a>, and involves a strategy and planning of what patches should be applied to which systems and at what times. Typically, a patch is applied in a permanent way (i.e. to <a href="Computer_storage" class="mw-redirect" title="Computer storage">storage</a>), but in some cases, a patch is applied to memory (i.e. via a tool such as a <a href="Debugger" title="Debugger">debugger</a>) in which case the change is lost when the resource is reloaded from storage.
</p><p><a href="Software_update" title="Software update">Software update</a> is sometimes conflated with patch even though they are not <a href="Synonym" title="Synonym">synonyms</a>. An update can be implemented using patch files and the patching process. Also, some may contend that patching is not limited to modifying file content; that adding, removing and replacing whole files is patching. Typically, patch connotates a relatively small change, so a patch that is large in size or scope may be called the more general <i>software update</i> or another more specific name such as <a href="Service_pack" title="Service pack">service pack</a>. <a href="Windows_NT" title="Windows NT">Windows NT</a> and its successors (including <a href="Windows_2000" title="Windows 2000">Windows 2000</a>, <a href="Windows_XP" title="Windows XP">Windows XP</a>, <a href="Windows_Vista" title="Windows Vista">Windows Vista</a> and <a href="Windows_7" title="Windows 7">Windows 7</a>) use <i>service pack</i>.<sup id="cite_ref-3" class="reference"><a href="#cite_note-3"><span class="cite-bracket">[</span>3<span class="cite-bracket">]</span></a></sup> Historically, <a href="IBM" title="IBM">IBM</a> used the terms <i>FixPak</i> and <i>Corrective Service Diskette</i> for such updates.<sup id="cite_ref-4" class="reference"><a href="#cite_note-4"><span class="cite-bracket">[</span>4<span class="cite-bracket">]</span></a></sup>
</p>
<meta property="mw:PageProp/toc">
<div class="mw-heading mw-heading2"><h2 id="History">History</h2></div>
<p>Historically, software suppliers distributed patches on <a href="Paper_tape" class="mw-redirect" title="Paper tape">paper tape</a> or on <a href="Punched_cards" class="mw-redirect" title="Punched cards">punched cards</a>, expecting the recipient to cut out the indicated part of the original tape (or deck), and patch in (hence the name) the replacement segment. Later patch distributions used magnetic tape. Then, after the invention of removable disk drives, patches came from the software developer via a <a href="Floppy_disk" title="Floppy disk">disk</a> or, later, <a href="CD-ROM" title="CD-ROM">CD-ROM</a> via <a href="Mail" title="Mail">mail</a>. With widely available <a href="Internet" title="Internet">Internet</a> access, <a href="Download" title="Download">downloading</a> patches from the developer's <a href="Web_site" class="mw-redirect" title="Web site">web site</a> or through automated software updates became often available to the end-users. Starting with Apple's <a href="Mac_OS_9" title="Mac OS 9">Mac OS 9</a> and Microsoft's <a href="Windows_ME" class="mw-redirect" title="Windows ME">Windows ME</a>, PC operating systems gained the ability to get automatic software updates via the Internet.
</p><p>Computer programs can often coordinate patches to update a target program. Automation simplifies the end-user's task – they need only to execute an update program, whereupon that program makes sure that updating the target takes place completely and correctly. Service packs for <a href="Microsoft_Windows_NT" class="mw-redirect" title="Microsoft Windows NT">Microsoft Windows NT</a> and its successors and for many commercial software products adopt such automated strategies.
</p><p>Some programs can update themselves via the <a href="Internet" title="Internet">Internet</a> with very little or no intervention on the part of users. The maintenance of <a href="Server_(computing)" title="Server (computing)">server</a> software and of <a href="Operating_system" title="Operating system">operating systems</a> often takes place in this manner. In situations where system administrators control a number of computers, this sort of automation helps to maintain consistency. The application of security patches commonly occurs in this manner.
</p><p>With the advent of larger storage media and higher Internet bandwidth, it became common to replace entire files (or even all of a program's files) rather than modifying existing files, especially for smaller programs.
</p>
<div class="mw-heading mw-heading2"><h2 id="Use">Use</h2></div>
<div class="mw-heading mw-heading3"><h3 id="Binary_patching">Binary patching</h3></div>
<p>Patches for <a href="Proprietary_software" title="Proprietary software">proprietary software</a> are typically distributed as <a href="Executable_file" class="mw-redirect" title="Executable file">executable files</a> instead of <a href="Source_code" title="Source code">source code</a>. When executed these files load a program into memory which manages the installation of the patch code into the target program(s) on disk.
</p><p>Patches for other software are typically distributed as data files containing the patch code. These are read by a patch <a href="Utility_program" class="mw-redirect" title="Utility program">utility program</a> which performs the installation. This utility modifies the target program's executable file—the program's <a href="Machine_code" title="Machine code">machine code</a>—typically by overwriting its bytes with bytes representing the new patch code. If the new code will fit in the space (number of bytes) occupied by the old code, it may be put in place by overwriting directly over the old code. This is called an inline patch. If the new code is bigger than the old code, the patch utility will append load record(s) containing the new code to the object file of the target program being patched. When the patched program is run, execution is directed to the new code with branch instructions (jumps or calls) patched over the place in the old code where the new code is needed. On early 8-bit microcomputers, for example the Radio Shack <a href="TRS-80" title="TRS-80">TRS-80</a>, the operating system includes a PATCH/CMD utility which accepts patch data from a text file and applies the fixes to the target program's executable binary file(s).
</p><p>The patch code must have place(s) in memory to be executed at runtime. Inline patches are no difficulty, but when additional memory space is needed the programmer must improvise. Naturally if the patch programmer is the one who first created the code to be patched, this is easier. Savvy programmers plan in advance for this need by reserving memory for later expansion, left unused when producing their final iteration. Other programmers not involved with the original implementation, seeking to incorporate changes at a later time, must find or make space for any additional bytes needed. The most fortunate possible circumstance for this is when the routine to be patched is a distinct module. In this case the patch programmer need merely adjust the pointers or length indicators that signal to other system components the space occupied by the module; he is then free to populate this memory space with his expanded patch code. If the routine to be patched does not exist as a distinct memory module, the programmer must find ways to shrink the routine to make enough room for the expanded patch code. Typical tactics include shortening code by finding more efficient sequences of instructions (or by redesigning with more efficient algorithms), compacting message strings and other data areas, externalizing program functions to mass storage (such as disk overlays), or removal of program features deemed less important than the changes to be installed with the patch.
</p><p>Small in-memory machine code patches can be manually applied with the system debug utility, such as <a href="CP/M" title="CP/M">CP/M</a>'s DDT or <a href="MS-DOS" title="MS-DOS">MS-DOS</a>'s DEBUG debuggers. Programmers working in interpreted <a href="BASIC" title="BASIC">BASIC</a> often used the POKE command to alter the functionality of a system service routine or the interpreter itself.
</p>
<div class="mw-heading mw-heading3"><h3 id="Source_code_patching">Source code patching</h3></div>
<p>A patch for source code defines how to modify the text of code files. Such a patch is usually a text file that encodes the differences between two versions of a file. As this type of patch is often created via the <code><a href="Diff_(Unix)" class="mw-redirect" title="Diff (Unix)">diff</a></code> command, the patch file is also a diff file.
</p><p>Source code patching is common for a <a href="Open-source_software_project" class="mw-redirect" title="Open-source software project">open-source software project</a>. Maintainers receive patches or people publish patches that fix problems and add functionality; like support for local languages outside the project's locale. In an example from the early development of the <a href="Linux_kernel" title="Linux kernel">Linux kernel</a> (noted for publishing its complete source code), <a href="Linus_Torvalds" title="Linus Torvalds">Linus Torvalds</a>, the original author, received hundreds of thousands of patches from many <a href="Programmer" title="Programmer">programmers</a> to apply against his original version.
</p><p>The <a href="Apache_HTTP_Server" title="Apache HTTP Server">Apache HTTP Server</a> originally evolved as a number of patches that <a href="Brian_Behlendorf" title="Brian Behlendorf">Brian Behlendorf</a> collated to improve <a href="NCSA_HTTPd" title="NCSA HTTPd">NCSA HTTPd</a>, hence a name that implies that it is a collection of patches (<a href="Apache_HTTP_Server#Name" title="Apache HTTP Server">"a patchy server"</a>). The FAQ on the project's official site states that the name 'Apache' was chosen from respect for the Native American Indian tribe of <a href="Apache" title="Apache">Apache</a>. However, the 'a patchy server' explanation was initially given on the project's website.<sup id="cite_ref-5" class="reference"><a href="#cite_note-5"><span class="cite-bracket">[</span>5<span class="cite-bracket">]</span></a></sup>
</p>
<div class="mw-heading mw-heading2"><h2 id="See_also">See also</h2></div>
<ul><li><a href="Automatic_bug_fixing" title="Automatic bug fixing">Automatic bug fixing</a> – Automatic repair of software bugs</li>
<li><a href="Backporting" title="Backporting">Backporting</a> – Developing an update for older software based on an update to a newer version</li>
<li><a href="Delta_encoding" title="Delta encoding">Delta encoding</a> – Type of data transmission method</li>
<li><a href="Dribbleware" title="Dribbleware">Dribbleware</a></li>
<li><a href="Monkey_patch" title="Monkey patch">Monkey patch</a> – Technique to dynamically modify runtime code</li>
<li><a href="Patch_(Unix)" title="Patch (Unix)">Patch (Unix)</a> – Command for applying changes to text files</li>
<li><a href="Porting" title="Porting">Porting</a> – Process of adapting software to run a different context</li>
<li><a href="Software_maintenance" title="Software maintenance">Software maintenance</a> – Modification of software after delivery</li>
<li><a href="Software_release_life_cycle" title="Software release life cycle">Software release life cycle</a> – Stages in creation of computer software</li>
<li><a href="SMP/E" title="SMP/E">SMP/E</a> – Software management utility for mainframes</li>
<li><a href="Upgrade" title="Upgrade">Upgrade</a> – Process of improving something by replacing part of it or adding additional parts</li>
<li><a href="Vulnerability_database" title="Vulnerability database">Vulnerability database</a> – Computer security vulnerabilities</li>
<li><a href="White_hat_(computer_security)" title="White hat (computer security)">White hat (computer security)</a> – Computer hacker who hacks ethically</li></ul>
<div class="mw-heading mw-heading2"><h2 id="References">References</h2></div>
<style data-mw-deduplicate="TemplateStyles:r1239543626">
/* start https://en.wikipedia.org/ */
.mw-parser-output .reflist{margin-bottom:0.5em;list-style-type:decimal}@media screen{.mw-parser-output .reflist{font-size:90%}}.mw-parser-output .reflist .references{font-size:100%;margin-bottom:0;list-style-type:inherit}.mw-parser-output .reflist-columns-2{column-width:30em}.mw-parser-output .reflist-columns-3{column-width:25em}.mw-parser-output .reflist-columns{margin-top:0.3em}.mw-parser-output .reflist-columns ol{margin-top:0}.mw-parser-output .reflist-columns li{page-break-inside:avoid;break-inside:avoid-column}.mw-parser-output .reflist-upper-alpha{list-style-type:upper-alpha}.mw-parser-output .reflist-upper-roman{list-style-type:upper-roman}.mw-parser-output .reflist-lower-alpha{list-style-type:lower-alpha}.mw-parser-output .reflist-lower-greek{list-style-type:lower-greek}.mw-parser-output .reflist-lower-roman{list-style-type:lower-roman}
/* end https://en.wikipedia.org/ */
</style><div class="reflist reflist-columns references-column-width" style="column-width: 30em;">
<ol class="references">
<li id="cite_note-news.com-1"><span class="mw-cite-backlink"><b><a href="#cite_ref-news.com_1-0">^</a></b></span> <span class="reference-text"><style data-mw-deduplicate="TemplateStyles:r1238218222">
/* start https://en.wikipedia.org/ */
.mw-parser-output cite.citation{font-style:inherit;word-wrap:break-word}.mw-parser-output .citation q{quotes:"\"""\"""'""'"}.mw-parser-output .citation:target{background-color:rgba(0,127,255,0.133)}.mw-parser-output .id-lock-free.id-lock-free a{background:url("./mw/Lock-green.svg")right 0.1em center/9px no-repeat}.mw-parser-output .id-lock-limited.id-lock-limited a,.mw-parser-output .id-lock-registration.id-lock-registration a{background:url("./mw/Lock-gray-alt-2.svg")right 0.1em center/9px no-repeat}.mw-parser-output .id-lock-subscription.id-lock-subscription a{background:url("./mw/Lock-red-alt-2.svg")right 0.1em center/9px no-repeat}.mw-parser-output .cs1-ws-icon a{background:url("./mw/Wikisource-logo.svg")right 0.1em center/12px no-repeat}body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-free a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-limited a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-registration a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-subscription a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .cs1-ws-icon a{background-size:contain;padding:0 1em 0 0}.mw-parser-output .cs1-code{color:inherit;background:inherit;border:none;padding:inherit}.mw-parser-output .cs1-hidden-error{display:none;color:var(--color-error,#d33)}.mw-parser-output .cs1-visible-error{color:var(--color-error,#d33)}.mw-parser-output .cs1-maint{display:none;color:#085;margin-left:0.3em}.mw-parser-output .cs1-kern-left{padding-left:0.2em}.mw-parser-output .cs1-kern-right{padding-right:0.2em}.mw-parser-output .citation .mw-selflink{font-weight:inherit}@media screen{.mw-parser-output .cs1-format{font-size:95%}html.skin-theme-clientpref-night .mw-parser-output .cs1-maint{color:#18911f}}@media screen and (prefers-color-scheme:dark){html.skin-theme-clientpref-os .mw-parser-output .cs1-maint{color:#18911f}}
/* end https://en.wikipedia.org/ */
</style><cite class="citation news cs1"><a rel="nofollow" class="external text" href="https://web.archive.org/web/20091016074048/http://www.news.com.au/technology/story/0%2C28348%2C26208289-5014239%2C00.html">"Microsoft issues biggest software patch on record"</a>. Reuters. 2009-10-14. Archived from <a rel="nofollow" class="external text" href="http://www.news.com.au/technology/story/0,28348,26208289-5014239,00.html">the original</a> on 16 October 2009<span class="reference-accessdate">. Retrieved <span class="nowrap">14 October</span> 2009</span>.</cite></span>
</li>
<li id="cite_note-2"><span class="mw-cite-backlink"><b><a href="#cite_ref-2">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="http://www.techopedia.com/definition/18105/bug-fix">"What is a Bug Fix? – Definition from Techopedia"</a>. <i>techopedia.com</i>. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20180703184033/https://www.techopedia.com/definition/18105/bug-fix">Archived</a> from the original on 2018-07-03<span class="reference-accessdate">. Retrieved <span class="nowrap">2015-07-29</span></span>.</cite></span>
</li>
<li id="cite_note-3"><span class="mw-cite-backlink"><b><a href="#cite_ref-3">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="http://windows.microsoft.com/en-us/windows/service-packs-download#sptabs=win7">"Service Pack and Update Center"</a>. <i>windows.microsoft.com</i>. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20150601154704/http://windows.microsoft.com/en-us/windows/service-packs-download#sptabs=win7">Archived</a> from the original on 2015-06-01<span class="reference-accessdate">. Retrieved <span class="nowrap">2015-06-01</span></span>.</cite></span>
</li>
<li id="cite_note-4"><span class="mw-cite-backlink"><b><a href="#cite_ref-4">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="http://www.tavi.co.uk/os2pages/glossary.html">"Glossary of terms"</a>. <i>www.tavi.co.uk</i>. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20161201090736/http://www.tavi.co.uk/os2pages/glossary.html">Archived</a> from the original on 2016-12-01<span class="reference-accessdate">. Retrieved <span class="nowrap">2016-11-23</span></span>.</cite></span>
</li>
<li id="cite_note-5"><span class="mw-cite-backlink"><b><a href="#cite_ref-5">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://web.archive.org/web/19970615081902/http://www.apache.org/info.html">"Apache HTTP Server Project"</a>. 15 June 1997. Archived from the original on 15 June 1997.</cite><span class="cs1-maint citation-comment"><code class="cs1-code">{{cite web}}</code>: CS1 maint: bot: original URL status unknown (link)</span></span>
</li>
</ol></div>
<div class="mw-heading mw-heading2"><h2 id="External_links">External links</h2></div>
<ul><li><a rel="nofollow" class="external text" href="http://www.catb.org/~esr/jargon/html/P/patch.html"><i>The Jargon File</i> entry for <i>patch</i></a></li>
<li><a rel="nofollow" class="external text" href="https://web.archive.org/web/20160603230400/http://singe.za.net/blog/archives/763-Limiting-Vulnerability-Exposure-through-effective-Patch-Management-a-thesis.html">A detailed masters dissertation dealing with security patches</a></li>
<li><a rel="nofollow" class="external text" href="https://www.kernel.org/doc/html/v4.17/process/submitting-patches.html#the-canonical-patch-format">Official Linux kernel patch format</a></li>
<li><a rel="nofollow" class="external text" href="https://www.techzoom.net/publications/0-day-patch">0-Day Patch – Exposing Vendors (In)security Performance</a>. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20140131144456/http://www.techzoom.net/publications/0-day-patch/">Archived</a> 2014-01-31 at the <a href="Wayback_Machine" title="Wayback Machine">Wayback Machine</a>. A metric comparing patch performance of Microsoft and Apple.</li></ul></div><!--htdig_noindex--><div><div class="zim-footer">
This article is issued from <a class="external text" title="Last edited on 2025-07-27" href="https://en.wikipedia.org/wiki/?title=Patch_(computing)&oldid=1302789650">Wikipedia</a>. The text is available under <a class="external text" href="https://creativecommons.org/licenses/by-sa/4.0/deed.en">Creative Commons Attribution-Share Alike 4.0</a> unless otherwise noted. Additional terms may apply for the media files.
</div>
</div><!--/htdig_noindex--></div>
</div>
</main>
</div>
</div>
</div>
</body></html>